package com.michale.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.michale.common.domain.operate.OperateLogEntity;
import io.swagger.annotations.Api;

import java.util.List;

/**
 * @author Michale
 * @apiNote  操作日志记录 服务层
 */
@Api(value = "操作日志记录-服务类")
public interface OperateLogService extends IService<OperateLogEntity> {

    /**
     * 新增操作日志
     *
     * @param operateLogEntity 操作日志对象
     */
    void insertOperable(OperateLogEntity operateLogEntity);

    /**
     * 查询操作日志集合
     *
     * @param operateLogEntity 分页查询参数
     * @return 操作日志集合
     */
    List<OperateLogEntity> selectOperateLogList(OperateLogEntity operateLogEntity);

    /**
     * 批量删除系统操作日志
     *
     * @param operateLogIds 需要删除的操作日志ID
     * @return 结果
     */
    int deleteOperateLogByIds(Long[] operateLogIds);

    /**
     * 清空操作日志记录
     *
     * @return 结果
     */
    void cleanOperateLog();
}

